// pages/reply_all/index.js
import http from '../../utils/api' // 引入api接口管理文件
var app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    avatarUrl:null,
    page:1,
  },

  // 预览图片
  previewImage: function(e){
    var that = this
    var index = e.currentTarget.dataset.index
    var pictures = that.data.info.image
    wx.previewImage({
      current: pictures[index],
      urls: pictures
    })
 },

 
 // 列表页预览图片
 previewImage2: function(e){
  var that = this
  var key = e.currentTarget.dataset.key; // 当前条目索引
  var index = e.currentTarget.dataset.index; // 当前图片索引
  var pictures = that.data.answer_list[key]['image']
  wx.previewImage({
    current: pictures[index],
    urls: pictures
  })
},

 /**
  * 回复评论
  */
 new_xs:function(e){
    wx.navigateTo({
      url: '../reply_comment/index?id='+e.currentTarget.dataset.id+'&content='+e.currentTarget.dataset.content,
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
      let that = this;
      let id = options.id; // 评论id
      http.news_comment_detail({ // 评论详情
        data: {
          'id':id
        },
        success: res => {
          if (res.code == 1) { // 成功的情况
            that.setData({
              info: res.data,
            })
          } else {
            app.tip(res.info);
          }
        },
        fail: err => {
          console.log(err)
        }
      }),
      http.news_answer_list({ // 回复列表
        data: {
          'comment_id':id,
          'page':that.data.page,
        },
        // 查关注人的文章
        success: res => {
          let zanwu;
          if (res.code == 1) { // 成功的情况
            if (res.data.length < 1) {
              zanwu = 1; // 是否显示没有数据
            } else {
              zanwu = 0;
            };
            that.setData({
              answer_list: res.data,
              zanwu:zanwu
            })
          } else {
            app.tip(res.info);
          }
        },
        fail: err => {
          console.log(err)
        }
      })
      wx.stopPullDownRefresh();

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    let that = this;
    that.setData({
      page:1, // 重置分页
    })
    that.onLoad({id:that.data.info.id});
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    let that=this
    that.setData({ 
      page: that.data.page + 1, //每次触发上拉事件，把page+1  
    });
    //调用分页查询数据的方法，返回新一页的数据为res
    http.news_answer_list({
      data: {
        'comment_id':that.data.info.id,
        'page':that.data.page
      },
      success:res=>{
        if(res.code == 1){ // 成功的情况
          var tmpArr = that.data.answer_list;
           // 这一步实现了上拉加载更多
           tmpArr.push.apply(tmpArr,res.data);
           let show;
           if(res.data.length < 1){
              show = 1 // 显示没有更多
           }else{
              show = 0;
           }
           that.setData({
            answer_list: tmpArr,
            show : show // 显示没有更多
           })
        }else{
          app.tip(res.info);
        }
      },
      fail:err=>{
        console.log(err)
      }
    })
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },
  videometa:function (e) {
    var that = this;
    //获取系统信息
    wx.getSystemInfo({
      success (res) {
        //视频的高
        var height = e.detail.height;
        
        //视频的宽
        var width = e.detail.width;
 
        //算出视频的比例
        var proportion = height / width;

        //res.windowWidth为手机屏幕的宽。
        var windowWidth = res.windowWidth;
 
        let bl = 750/res.windowWidth; //该设备的rpx与px的比例

        let bl_width = windowWidth - windowWidth*0.16 - 70/bl; // 宽度的百分之92 减去 60rpx 转换的像素

        //算出当前宽度下高度的数值
        height = proportion * bl_width;
        that.setData({
          height:height,
          width:bl_width
        });
      }
    })
  },

  /**
   * 点赞
   * @param {*} e 
   */
  giveLike:function(e){
    let data = e.currentTarget.dataset;let that = this; // 传来的数据
    let status = 0; // 默认点赞动作
    if(data.like_status ==  0){
      status = 1;  // 点过赞 再点就是取消点赞
    }
    let param = {comment_id:data.comment_id,status:status};
    http.news_comment_like({
      data:param,
      success:res=>{
          app.tip(res.info,1000); // 提示信息
          if(res.code == 1){
              // 点赞成功时遍历msg对象并获取到当前节点的id
              that.setData({
                // 改变对象节点的点赞状态
                ['info.like_status']: status,
              })
              if(status == 0){ // 点赞+1 取消减1
                that.setData({
                  ['info.like']: that.data.info['like']+1,
                })
              }else{
                that.setData({
                  ['info.like']: that.data.info['like']-1,
                  })
              }
          }
      },
      fail:err=>{
        console.log(err)
      }
    })
  },

  
  /**
   * 评论点赞
   */
  answerGiveLike:function(e){
    let data = e.currentTarget.dataset;let that = this; // 传来的数据
    let status = 0; // 默认点赞动作
    if(data.like_status ==  0){
      status = 1;  // 点过赞 再点就是取消点赞
    }
    let param = {answer_id:data.answer_id,status:status};
    http.news_answer_like({
      data:param,
      success:res=>{
          app.tip(res.info,1000); // 提示信息
          if(res.code == 1){
            for (var i = 0; i < that.data.answer_list.length; i++) {
              if (that.data.answer_list[i].id == data.answer_id) {
                // 点赞成功时遍历msg对象并获取到当前节点的id
                that.setData({
                  // 改变对象节点的点赞状态
                  ['answer_list[' + i + '].like_status']: status,
                })
                if(status == 0){ // 点赞+1 取消减1
                  that.setData({
                   ['answer_list[' + i + '].like']: that.data.answer_list[i]['like']+1,
                  })
                }else{
                  that.setData({
                    ['answer_list[' + i + '].like']: that.data.answer_list[i]['like']-1,
                   })
                }
              }
            }
          }
      },
      fail:err=>{
        console.log(err)
      }
    })
  },

})